<!DOCTYPE html>
<html>
<!--
Copyright 2008 The Closure Library Authors. All Rights Reserved.

Use of this source code is governed by the Apache License, Version 2.0.
See the COPYING file for details.
-->
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Closure Unit Tests - goog.ui.emoji.SpriteInfo</title>
<script src="../../base.js"></script>
<script>
  goog.require('goog.dom');
  goog.require('goog.testing.jsunit');
  goog.require('goog.ui.emoji.SpriteInfo');
</script>

<script>
  function testGetCssValues() {
    var si = new goog.ui.emoji.SpriteInfo(null, 'im/s.png', 10, 10, 0, 128);
    assertEquals('10px', si.getWidthCssValue());
    assertEquals('10px', si.getHeightCssValue());
    assertEquals('0', si.getXOffsetCssValue());
    assertEquals('-128px', si.getYOffsetCssValue());
  }

  function testIncompletelySpecifiedSpriteInfoFails() {
    assertThrows('CSS class can\'t be null if the rest of the metadata ' +
                 'isn\'t specified', function() {
      new goog.ui.emoji.SpriteInfo(null)});

    assertThrows('Can\'t create an incompletely specified sprite info',
        function() {
          new goog.ui.emoji.SpriteInfo(null, 's.png', 10);
        });

    assertThrows('Can\'t create an incompletely specified sprite info',
        function() {
          new goog.ui.emoji.SpriteInfo(null, 's.png', 10, 10);
        });

    assertThrows('Can\'t create an incompletely specified sprite info',
        function() {new goog.ui.emoji.SpriteInfo(null, 's.png', 10, 10, 0);});
  }
</script>

</head>
<body>
</body>
</html>
